<?php

namespace User\Model\Entity;

interface ModuleSettingsInterface {
	/**
	 * @return int
	 */
	public function getId();

	/**
	 * @param int $id
	 * @return ModuleSettingsInterface
	 */
	public function setId($id);

	/**
	 * @return string
	 */
	public function getLoginRoute();

	/**
	 * @param string $loginRoute
	 * @return ModuleSettingsInterface
	 */
	public function setLoginRoute($loginRoute);
	
	/**
	 * @return string
	 */
	public function getRedirectRouteLogin();

	/**
	 * @param string $redirectRouteLogin
	 * @return ModuleSettingsInterface
	 */
	public function setRedirectRouteLogin($redirectRouteLogin);

	/**
	 * @return string
	 */
	public function getRedirectRouteLogout();

	/**
	 * @param string $redirectRouteLogout
	 * @return ModuleSettingsInterface
	 */
	public function setRedirectRouteLogout($redirectRouteLogout);

	/**
	 * @return bool
	 */
	public function getLoginAfterRegistration();

	/**
	 * @param string $loginAfterRegistration
	 * @return ModuleSettingsInterface
	 */
	public function setLoginAfterRegistration($loginAfterRegistration);

	/**
	 * @return bool
	 */
	public function getRegistrationEnable();

	/**
	 * @param string $registrationEnable
	 * @return ModuleSettingsInterface
	 */
	public function setRegistrationEnable($registrationEnable);

	/**
	 * @return bool
	 */
	public function getRegistrationUseFormCaptcha();

	/**
	 * @param string $registrationUseFormCaptcha
	 * @return ModuleSettingsInterface
	 */
	public function setRegistrationUseFormCaptcha($registrationUseFormCaptcha);
	
	/**
	 * @return array
	 */
	public function getFormCaptchaOptions();
	
	/**
	 * @param array $formCaptchaOptions
	 * @return ModuleSettingsInterface
	 */
	public function setFormCaptchaOptions($formCaptchaOptions);
}